﻿using FreeSql.DataAnnotations;
using KrasDD.Attributes;

namespace KrasDD.Models
{
    [
        JsonObject(MemberSerialization.OptIn),
        Table(Name = "[innovator].[ACCESS]", DisableSyncStructure = false)
    ]
    [ItemType("CF83A1B4C5D6E7F8A9B0C1D2E3F4A5C0", "ACCESS", true)]
    public partial class ACCESS : Relationships<PERMISSION, IDENTITY>
    {
        [JsonProperty, Column(StringLength = 64)]
        public string BEHAVIOR { get; set; }

        [JsonProperty, Column(DbType = "bit")]
        public bool CAN_CHANGE_ACCESS { get; set; } = false;

        [JsonProperty, Column(DbType = "bit")]
        public bool CAN_DELETE { get; set; }

        [JsonProperty, Column(DbType = "bit")]
        public bool CAN_DISCOVER { get; set; } = false;

        [JsonProperty, Column(DbType = "bit")]
        public bool CAN_GET { get; set; }

        [JsonProperty, Column(DbType = "bit")]
        public bool CAN_UPDATE { get; set; }

        [JsonProperty]
        public DateTime? END_DATE { get; set; }

        [JsonProperty]
        public DateTime? FROM_DATE { get; set; }

        [JsonProperty, Column(DbType = "bit")]
        public bool SHOW_PERMISSIONS_WARNING { get; set; }

    }
}
